package com.bbva.kyfb.kyfbdto.firmas.fachada.v01;

import java.io.Serializable;

import javax.xml.bind.annotation.XmlRootElement;

import org.apache.commons.lang.builder.ToStringBuilder;

/**
 * Representa un objeto firmable.
 *
 * @author xe35008
 * @version 1.0
 */
@XmlRootElement
public class InfoComponent implements Serializable{

	/** The Constant serialVersionUID. */
	private static final long serialVersionUID = 1L;
	/**
	 * Codigo identificador del tipo de orden.
	 * O tipo del fichero a firmar. (xej TRA)
	 */
	private String sCodTipoOrden;
	/**
	 * Descripcion del tipo de orden que puede firmar la referencia.
	 */
	private String sDesOrden;

	/** Tipo de corte. */
	private String sTipoCorte;

	/** Hora de corte. */
	private String HmsCorte;
	/**
	 * Identificador del fichero a firmar.
	 */
	private String sIdOrdenFirmas;
	/**
	 * Poder de firma del usuario devuelto. (xej S, M2, M3, M4)
	 */
	private String sPoderFirma;

	/** Codigo de servicio del tipo de orden (xej 203, 205, 158). */
	private String codigoServicio;

	/** mensaje Aviso */
	private String mensajeAviso;

	/** codigo mensaje Aviso */
	private String codigoMensajeAviso;

	/** Indica que el usuario acepto el Disclaimers para este tipo de orden. 
	 * En caso de que llegue ‘S’ se grabara como que el usuario acepto ese Disclaimers.  
	 * Si ya lo tenía aceptado con anterioridad, no tendrá ningún efecto. 
	 * Cualquier otro valor no tendrá efecto en la lógica. */
	private String sAceptacionDisclaimer;
	
	/**
	 * Instantiates a new info component.
	 */
	public InfoComponent() {}

	/**
	 * @return the sAceptacionDisclaimer
	 */
	public String getsAceptacionDisclaimer() {
		return sAceptacionDisclaimer;
	}

	/**
	 * @param sAceptacionDisclaimer the sAceptacionDisclaimer to set
	 */
	public void setsAceptacionDisclaimer(String sAceptacionDisclaimer) {
		this.sAceptacionDisclaimer = sAceptacionDisclaimer;
	}

	/**
	 * Gets the s id orden firmas.
	 *
	 * @return the sIdOrdenFirmas
	 */
	public String getsIdOrdenFirmas() {
		return sIdOrdenFirmas;
	}

	/**
	 * Sets the s id orden firmas.
	 *
	 * @param sIdOrdenFirmas the sIdOrdenFirmas to set
	 */
	public void setsIdOrdenFirmas(final String sIdOrdenFirmas) {
		this.sIdOrdenFirmas = sIdOrdenFirmas;
	}

	/**
	 * Gets the s poder firma.
	 *
	 * @return the sPoderFirma
	 */
	public String getsPoderFirma() {
		return sPoderFirma;
	}

	/**
	 * Sets the s poder firma.
	 *
	 * @param sPoderFirma the sPoderFirma to set
	 */
	public void setsPoderFirma(final String sPoderFirma) {
		this.sPoderFirma = sPoderFirma;
	}

	/**
	 * Gets the s cod tipo orden.
	 *
	 * @return the sCodTipoOrden
	 */
	public String getsCodTipoOrden() {
		return sCodTipoOrden;
	}

	/**
	 * Sets the s cod tipo orden.
	 *
	 * @param sCodTipoOrden the sCodTipoOrden to set
	 */
	public void setsCodTipoOrden(final String sCodTipoOrden) {
		this.sCodTipoOrden = sCodTipoOrden;
	}

	/**
	 * Gets the s des orden.
	 *
	 * @return the sDesOrden
	 */
	public String getsDesOrden() {
		return sDesOrden;
	}

	/**
	 * Sets the s des orden.
	 *
	 * @param sDesOrden the sDesOrden to set
	 */
	public void setsDesOrden(final String sDesOrden) {
		this.sDesOrden = sDesOrden;
	}

	/**
	 * Gets the s tipo corte.
	 *
	 * @return the sTipoCorte
	 */
	public String getsTipoCorte() {
		return sTipoCorte;
	}

	/**
	 * Sets the s tipo corte.
	 *
	 * @param sTipoCorte the sTipoCorte to set
	 */
	public void setsTipoCorte(final String sTipoCorte) {
		this.sTipoCorte = sTipoCorte;
	}

	/**
	 * Gets the hms corte.
	 *
	 * @return the hmsCorte
	 */
	public String getHmsCorte() {
		return HmsCorte;
	}

	/**
	 * Sets the hms corte.
	 *
	 * @param hmsCorte the hmsCorte to set
	 */
	public void setHmsCorte(final String hmsCorte) {
		HmsCorte = hmsCorte;
	}

	/**
	 * Devuelve el codigo de servicio.
	 *
	 * @return el codigoServicio
	 */
	public String getCodigoServicio() {
		return codigoServicio;
	}

	/**
	 * Setea el codigo de servicio.
	 *
	 * @param codigoServicio el codigoServicio a setear
	 */
	public void setCodigoServicio(final String codigoServicio) {
		this.codigoServicio = codigoServicio;
	}

	/**
	 * @return the mensajeAviso
	 */
	public String getMensajeAviso() {
		return mensajeAviso;
	}

	/**
	 * @param mensajeAviso the mensajeAviso to set
	 */
	public void setMensajeAviso(final String mensajeAviso) {
		this.mensajeAviso = mensajeAviso;
	}

	/**
	 * @return the codigoMensajeAviso
	 */
	public String getCodigoMensajeAviso() {
		return codigoMensajeAviso;
	}

	/**
	 * @param codigoMensajeAviso the codigoMensajeAviso to set
	 */
	public void setCodigoMensajeAviso(final String codigoMensajeAviso) {
		this.codigoMensajeAviso = codigoMensajeAviso;
	}

	/* (non-Javadoc)
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return /*"InfoComponent [sCodTipoOrden=" + sCodTipoOrden + ", sDesOrden="
				+ sDesOrden + ", sTipoCorte=" + sTipoCorte + ", HmsCorte="
				+ HmsCorte + ", sIdOrdenFirmas=" + sIdOrdenFirmas
				+ ", sPoderFirma=" + sPoderFirma + ", codigoServicio="
				+ codigoServicio + "]";*/
				ToStringBuilder.reflectionToString(this);
	}

}
